<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>axios test3 </title>

    <!-- <script src="../javascripts/template-web.js"></script> -->
    <script src="../javascripts/axios.js"></script>
    <!-- <script src="javascripts/better-scroll.js"></script> -->

</head>

<body>


    <!-- 


        官网 地址  


        https://github.com/axios/axios

        文档 
        http://www.axios-js.com/zh-cn/docs/


        同样的api , 

        使用 promise 管理异步 ， 告别传统 callback



        使用  axios    发送 post 请求

        axios 请求与响应配置参数  

        定制化 请求 



        get 有两个参数
        axios.get(url[, config])

        post  
        有三个参数  url, data, config 
        axios.post(url[, data[, config]])


        或者直接时候用  axios(config) , config={url:xxx,header:xxx,...}

      
    
        http://www.axios-js.com/zh-cn/docs/#axios-get-url-config
    -->

    <script>
        // 请求配置参数 
        // 配置写法 
        // axios({
        //     url: '/list',
        //     method: 'GET',
        //     params: {
        //         ID: 12345,
        //         username: 'frank'

        //     },
        //     headers: {
        //         'Accept': 'application/json, text/plain, */*',
        //         'Cache-Control': 'no-cache'

        //     }

        // });

        // 发送post 数据,通过配置 
        // axios({
        //     url: '/register',
        //     method: 'POST',
        //     headers: {
        //         'Accept': 'application/json, text/plain, */*',
        //         'Content-Type': 'application/json',
        //         'Cache-Control': 'no-cache'

        //     },
        //     // 要发送的数据
        //     data: { id: 1, username: 'frank' }

        // }).then((response) => {
        //     console.log(response);
        // }).catch((err) => {
        //     console.log(err);

        // });



        // axios 全局配置 
        // 你可以指定将被用在各个请求的配置默认值
        // 每个请求都会携带 这个的配置
        const AUTH_TOKEN = 'sdfx*#@xx00l;;./,jd]/s\]qa23642(&sosoajfoa';
        // axios.defaults.baseURL = 'https://api.example.com';
        axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
        // axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
        

        // 默认 每个请求都会有这个,如果请求中实际配置了这个参数 ，将会覆盖默认的配置， 使用自己的参数进行发送数据
        axios.defaults.params = { age: 10 }

        axios.get('/list',
            {
                method: 'GET',
                params: {
                    ID: 12345,
                    username: 'frank',
                    // 修改 age
                    age:20


                }
            });

        
            axios.post('/register',{
                 id: 1, 
                 username: 'frank' 

            },{
                // 修改age 
                params:{
                    age:30
                }
            }
            ).then((res)=>{
                console.log(res.data);
            }).catch((err)=>{

                console.log(err);
            });

    </script>
</body>

</html>